package com.itheima.dao;

import com.github.pagehelper.Page;
import com.itheima.pojo.Role;

import java.util.List;
import java.util.Map;
import java.util.Set;

public interface RoleDao {
    public Set<Role> findByUserId(Integer userId);

    //按条件查询
    Page<Role> findByCondition(String queryString);

    //按角色Id查询
    Role findById(Integer id);

    //根据角色Id查询权限Id
    List<Integer> findPermissionIdByRoleId(Integer id);

    //根据角色Id查询菜单Id
    List<Integer> findMenuIdByRoleId(Integer id);

    //建立角色表
    void add(Role role);

    //建立 角色  与  权限关系
    void setRoleAndPermission(Map<String, Integer> map);
    //建立 角色  与  菜单关系
    void setRoleAndMenu(Map<String, Integer> map);

    //删除 角色表中角色
    void delete(Integer id);

    //解除角色与权限
    void upsetRoleAndPermission(Integer id);

    //解除角色与菜单
    void upsetRoleAndMenu(Integer id);

    //编辑
    void edit(Role role);
}
